package day16;

import java.io.InputStream;
import java.io.OutputStream;
import java.net.Socket;
import java.util.Scanner;
// 客户端
public class TcpClient_test {
    public static void main(String[] args) throws Exception{
        // 创建客户端对象
        Socket client = new Socket("127.0.0.1",8888);
        // 创建io流对象
        InputStream is = client.getInputStream();
        OutputStream os = client.getOutputStream();
        Scanner sc = new Scanner(System.in);
        while(true){
            // 从键盘录入数据
            System.out.print("请输入需要反转的字符串：(输入quit结束)");
            String text = sc.nextLine();
            // 发送数据给服务器
            os.write(text.getBytes());
            // 判断结束条件
            if("quit".equals(text)){break;}
            // 接收服务器发送回来的数据
            byte[] b = new byte[1024];
            int length = is.read(b);
            if(length != -1){
                String text_reversed = new String(b,0,length);
                System.out.println("反转之后的字符串为："+text_reversed);
            }
        }
        // 关闭资源 处理异常 注意判空
        // 后使用的先关闭
        if(is != null){is.close();}
        if(os != null){os.close();}
        if(sc != null){sc.close();}
        if(client != null){client.close();}
    }
}
